package com.aaa.utils;

import cn.hutool.core.util.ObjectUtil;

import java.util.List;
import java.util.Random;

/**
 * @author ：肖成杰（1752167034@qq.com）
 * @date ：Created in 2022/8/30 20:35
 * @description：产生随机数
 * @modified By：
 * @version: 1.0
 */
public class MyRandom {

    /**
     *  @create by: 肖成杰
     *  @description: 产生随机数并判断是否重复
     *  @create time: 2022/8/30 20:40
     *  @params
     *  @return int
     *  */
    public static int myRan(List list){
        Random random = new Random();
        //产生一个int类型的随机数
        int ran = random.nextInt(899999) + 100000;
        //如果list为空则返回产生的随机数
        if(ObjectUtil.isEmpty(list)){
            return ran;
        }
        return a(list,ran,random);
    }

    /**
     * 返回一个与list中的每一个都不相同的数
     * @param list
     * @param ran
     * @param random
     * @return
     */
    private static int a(List<Integer> list ,int ran,Random random){

        boolean contains = list.contains(ran);
        if(contains){
            ran= random.nextInt(899999) + 100000;
            return a(list ,ran,random);
        }
        return ran;
    }

}